const express=require('express');
const routes=express.Router();

const mysql=require('mysql');
var pool=mysql.createPool({
//    最大链接数
    connectionLimit:10,
//    主机
    host:'localhost',
//    数据库登陆用户名
    user:'root',
//    登录密码
    password:'123456',
//    当前项目链接的数据库
    database:'stutest'
})


//设置路由规则
routes.get('/',(req,resp)=>{
//    1.获取cookie中的uid和posts
    const uid=req.cookies.uid;
    if(req.cookies.posts==1){
        var posts='教师';
    }
    var sub_id=req.cookies.sub_id;
    //每页的条数
    var num=8;
//    获取当前的页码；当地址栏上没有页码参数时，默认当前为第一页
    var page=(req.query.page) ? req.query.page : 1;
//    每页的第一条的开始位置
    var start=(page-1)*num;
//    1.拼接查询学生登录日志的sql语句
    var sql=`select * from stu_msg where sub_id=${sub_id} order by id desc limit ${start},${num}`;
//    2.链接数据库以及执行sql语句
    pool.getConnection((error,connection)=>{
        if(error) throw error;
        //    1.第一次查询：查询所有登录记录
        connection.query(sql,(errs,result)=>{
            //    sql语句查询总条数：select count(*) as sum from login where post=2
            var sql_sum=`select count(*) as sum from stu_msg where sub_id=${sub_id}`
            //  2.  查询记录总条数
            connection.query(sql_sum,(err,res)=>{
                //    释放数据
                connection.release();
                //获取查询总条数
                var sum=res[0].sum;
                // 总条数
                var pages=Math.ceil(sum/num);
                //    渲染视图
                    resp.render('sel_means',{
                        uid:uid,
                        posts:posts,
                        result:result,
                        pages:pages,    //页数
                        page:page
                    });

                if(errs)throw errs;
            })
            if (errs)throw errs
        })
    })

})

//删除路由函数
routes.post('/del',(req,resp)=>{
    var stu_uid=req.query.uid;
//    删除成绩表
    var sql_scores=`delete from scores where uid=${stu_uid}`

    pool.getConnection((error,connection)=>{
    if(error) throw error;
    //执行删除成绩的sql语句
        connection.query(sql_scores,(errs,result)=>{
        //    判断第一个删除是否成功
            if(result){
            //    删除学生信息表
                var sql_msg=`delete from stu_msg where uid=${stu_uid}`;
                connection.query(sql_msg,(err,res)=>{
                    connection.release()

                    if(res){
                    //    如果删除成功，返回ajax的结果为1
                        resp.send({code:1});
                    }else{
                    //    如果删除失败，返回ajax的结果为0
                        resp.send({code:0});
                    }
            if(err) throw  err;
                })
            }
            if(errs) throw errs;
        })
    })
})

//允许访问路由实例
module.exports=routes;